﻿/*
神奇的fans 
Time Limit:1000MS  Memory Limit:32768K

  
	Description:
	传说fans是一个数学天才。
	在他五岁那年，从一堆数字卡片中选出了4张卡片：5，7，6，8。这4个数字有什么神秘之处呢？
	如果把这4张卡片自左往右的排成：5，6，7，8。
	你就会发现：原来这4个数字构成了等差数列！
	当年fans选出了n组卡片，据说都能够构成等差数列。
	但是事实真的是这样吗？fans真的有这么神奇吗？
	n组数据就是fans选出的n组卡片，请你判断每一组卡片是否能构成等差数列，如果能够构成等差数列，输出“yes”，否则输出“no”。
	文件中第一个数为数据的组数n，表示后面有n行，
	每行中的第一个数为该组数据的元素个数m（1≤m≤100），其后是m个正整数（不会超出int的表示范围）。
	
Sample Input:
2
4 5 7 6 8
8 1 7 3 2 8 12 78 3
Sample Output:
yes
no
*/
#include <cstdio>
#include <algorithm>
using namespace std;
#define MAX_ELEMS 128

int main(int argc, char* argv[])
{
	int n;

	if(EOF!=scanf("%d", &n))
	{
		unsigned int a[MAX_ELEMS]={0};
		unsigned int i;
		while (n-->0)
		{
			for(scanf("%u", &a[0]), i=1; i<=a[0]; ++i)
				scanf("%u", a+i);			
			if(a[0]<=2)
			{
				printf("yes\n");
				return 0;
			}
			sort(a+1, a+a[0]);

			for (i=2; i<a[0]; ++i)		
				if((a[i-1]+a[i+1])!=(a[i]<<1))
					break;
			printf(i<(a[0]-1)?"no\n":"yes\n");
			}
		}
	return 0;
}

